Главная arrow книги arrow Копия Глава 7. Логические агенты arrow Агенты на основе логических схем
Агенты на основе логических схем

В предыдущем разделе было указано, что агенты на основе логической схемы позволяют учитывать временные соотношения намного более успешно, чем пропозициональные агенты на основе логического вывода. Это связано с тем, что значение, хранящееся в каждом регистре, показывает истинностное значение соответствующего пропозиционального символа в текущий момент времени t, поэтому регистр не хранит отдельные копии этого значения для каждого отдельного интервала времени. Например, можно предусмотреть регистр Alive, который должен содержать значение true, если вампус жив, и false, если он мертв. Этот регистр соответствует пропозициональному символу, поэтому в каждом временном интервале он ссылается на разные высказывания. Внутреннее состояние этого агента (т.е. его память) поддерживается путем обратного подключения выхода некоторого регистра к той же схеме через линию задержки. Это позволяет доставить в схему информацию о состоянии регистра в предыдущем интервале времени. Один из примеров такой конструкции приведен на рис. 7.9. Значение регистра Alive формируется с помощью конъюнкции отрицания восприятия Scream и пропущенного через линию задержки значения самого регистра Alive. Действие, выполняемое этой схемой применительно к регистру Alive, можно представить в форме высказывания как следующую двухстороннюю импликацию:

(7.4)

Это высказывание означает, что вампус в момент времени t жив тогда и только тогда, когда в момент времени t не был слышен его жалобный предсмертный крик (такое состояние нельзя определить по крику в момент времени t-1), и он был жив в момент времени t-1. Предполагается, что при инициализации этой логической схемы значение регистра Alive устанавливается равным true. Поэтому значение регистра Alive остается истинным до тех пор, пока не раздается жалобный крик вампуса, после чего это значение становится ложным и остается таковым. Это — именно то, что требуется.

За местонахождением агента можно следить в основном с использованием такого же способа, с помощью которого мы следим за здоровьем вампуса. Для этого требуется иметь отдельный регистрдля каждого значения χ и у; его значение должно быть равным true, если агент находится в квадрате [х, у]. Однако логическая схема, которая присваивает значение регистру, является гораздо более сложной по сравнению с логической схемой для регистра Alive. Например, агент находится в квадрате [1,1] в момент времени t, если он, во-первых, был здесь в момент времени t-Ι и либо не двинулся вперед, либо попытался двинуться, но ударился об стену; во-вторых, находился в квадрате [1,2], смотря вниз, и двинулся вперед; в-третьих, находился в квадрате [2,1], смотря влево, и двинулся вперед. Эти три условия можно описать с помощью следующего высказывания:

(7.5)